Data Integrity By Design